package com.fjwt.gz.db.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.fjwt.gz.core.model.BaseModel;
import java.util.Date;
import java.util.List;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 小程序轮播图配置表
 * </p>
 *
 * @author shiyonghao
 * @since 2025-04-09
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("t_lite_banner")
public class LiteBannerEntity extends BaseModel {

    public static LambdaQueryWrapper<LiteBannerEntity> gw(){
        return new LambdaQueryWrapper<>();
    }

    /**
     * 主键
     */
    @TableId(value = "banner_id", type = IdType.AUTO)
    private Long bannerId;

    /**
     * 微信appid
     */
    private String appId;

    /**
     * 轮播名称
     */
    private String swiperName;

    /**
     * 轮播图图片地址
     */
    private String url;

    /**
     * 链接类型 0不做链接 1活动详情  2本小程序页面  3外部网页链接
     */
    private String linkType;

    /**
     * 类型对应的内容  活动id / 小程序路径 /  网页地址
     */
    private String content;

    /**
     * 排序
     */
    private Integer sort;

    /**
     * 开始时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;

    /**
     * 结束时间类型 0无期限 1定时
     */
    private Integer endType;

    /**
     * 结束时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;

    /**
     * 状态 0上线 1下线
     */
    private Integer state;

    /**
     * 是否删除 0否 1是，默认0
     */
    private Integer isDeleted;

    /**
     * 创建者
     */
    private Long createdUid;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createdAt;

    /**
     * 更新者
     */
    private Long updatedUid;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateAt;

    /**
     * 备注
     */
    private String remark;

    /**
     * 机构号
     */
    private String agentNo;
    /**
     * 一级机构号
     */
    private String agentNo1;
    /**
     * 二级机构号
     */
    private String agentNo2;
    /**
     * 三级机构号
     */
    private String agentNo3;
    /**
     * 四级机构号
     */
    private String agentNo4;

    /**
     * 机构号集合
     */
    @TableField(exist = false)
    private List<String> agentNoList;


}
